package com.gizwits.datapoint

object Bytes {
  def hex2bytes(hex: String): List[Byte] = {
    hex.replaceAll("[^0-9A-Fa-f]", "").sliding(2, 2).toList.map(Integer.parseInt(_, 16).toByte)
  }

  def bytes2hex(bytes: List[Byte], sep: Option[String] = None): String = {
    sep match {
      case None => bytes.map("%02x".format(_)).mkString
      case _ => bytes.map("%02x".format(_)).mkString(sep.get)
    }
  }

}
